package com.huas.mapper;

import com.github.pagehelper.Page;
import com.huas.dto.UserPasswordDTO;
import com.huas.entity.User;
import org.apache.ibatis.annotations.*;

@Mapper
public interface UserMapper {
    /**
     * 分页查询（带条件）
     */
    Page<User> page(String name);

    /**
     * 添加用户
     * @param user
     */
    void insert(User user);
    /**
     * 根据ID查询用户
     */
    @Select("select id,account,password,name,avatar,role_id,email from user where id = #{id}")
    User findById(Integer id);

    /**
     * 修改用户
     * @param user
     */
    void update(User user);
    /**
     * 删除用户
     */
    @Delete("delete from user where id = #{id}")
    void delete(Integer id);

    /**
     * 使主键从当前最大的值开始自增（可以解决部分自增不连续问题）
     */
    @Update("ALTER TABLE user AUTO_INCREMENT = 1")
    void reset();

    /**
     * 修改密码
     * @param userPasswordDTO
     */
    void updatePassword(UserPasswordDTO userPasswordDTO);


}
